package cn.wizzer.framework.util;

import java.text.SimpleDateFormat;
import java.util.Date;

public class Id {

    private static Integer number = 1;
    private static int maxNum = 200000;
    private static SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");//年月日格式

    /**
     * 生成订单编号 17+ 位数
     *
     * @return
     */
    public static String createOrderNo() {
        number++;//唯一数字自增
        if (number >= maxNum) { // 值的上限，超过就归零
            number = maxNum - 200000;
        }
        return sdf.format(new Date()) + number;//返回时间+一毫秒内唯一数字的编号，区分机器可以加字母ABC...
    }
    /**
     * 生成ID 8 位数
     *
     * @return
     */
    public static String createCode() {
        String format = sdf.format(new Date());
        return format.substring(3,4)+format.substring(5,6)+format.substring(7,8)+format.substring(9,10)
                +     format.substring(11,12)+format.substring(14,17);
    }
}
